package com.base.logistics.jdl.bean.print;

import java.io.Serializable;
import java.util.List;

/**
 * <pre>
 * 打印数据
 * </pre>
 * @since 2021-03-06
 */
public class PrintJdlOrderParameters  implements Serializable {

    /**
     * 打印机名称
     * <pre>
     * 是否必填： 否
     * </pre>
     */
    private String printName;

    /**
     * 页面上下偏移量 单位mm
     * <pre>
     * 是否必填： 是
     * </pre>
     */
    private Integer offsetTop;

    /**
     * 页面左右偏移量 单位mm
     * <pre>
     * 是否必填： 是
     * </pre>
     */
    private Integer offsetLeft;

    /**
     * 标准模版链接
     * <pre>
     * 是否必填： 否
     * </pre>
     */
    private String tempUrl;

    /**
     * 打印数据
     * <pre>
     * 是否必填： 否
     * </pre>
     */
    private List<String> printData;

    /**
     * 自定义区模板url
     * <pre>
     * 是否必填： 是
     * </pre>
     */
    private String customTempUrl;

    /**
     * 自定义数据
     * <pre>
     * 是否必填： 是
     * </pre>
     */
    private List<Object> customData;

    public PrintJdlOrderParameters() {
    }

    public String getPrintName() {
        return this.printName;
    }

    public Integer getOffsetTop() {
        return this.offsetTop;
    }

    public Integer getOffsetLeft() {
        return this.offsetLeft;
    }

    public String getTempUrl() {
        return this.tempUrl;
    }

    public List<String> getPrintData() {
        return this.printData;
    }

    public String getCustomTempUrl() {
        return this.customTempUrl;
    }

    public List<Object> getCustomData() {
        return this.customData;
    }

    public void setPrintName(String printName) {
        this.printName = printName;
    }

    public void setOffsetTop(Integer offsetTop) {
        this.offsetTop = offsetTop;
    }

    public void setOffsetLeft(Integer offsetLeft) {
        this.offsetLeft = offsetLeft;
    }

    public void setTempUrl(String tempUrl) {
        this.tempUrl = tempUrl;
    }

    public void setPrintData(List<String> printData) {
        this.printData = printData;
    }

    public void setCustomTempUrl(String customTempUrl) {
        this.customTempUrl = customTempUrl;
    }

    public void setCustomData(List<Object> customData) {
        this.customData = customData;
    }

    public boolean equals(final Object o) {
        if (o == this) return true;
        if (!(o instanceof PrintJdlOrderParameters)) return false;
        final PrintJdlOrderParameters other = (PrintJdlOrderParameters) o;
        if (!other.canEqual((Object) this)) return false;
        final Object this$printName = this.getPrintName();
        final Object other$printName = other.getPrintName();
        if (this$printName == null ? other$printName != null : !this$printName.equals(other$printName)) return false;
        final Object this$offsetTop = this.getOffsetTop();
        final Object other$offsetTop = other.getOffsetTop();
        if (this$offsetTop == null ? other$offsetTop != null : !this$offsetTop.equals(other$offsetTop)) return false;
        final Object this$offsetLeft = this.getOffsetLeft();
        final Object other$offsetLeft = other.getOffsetLeft();
        if (this$offsetLeft == null ? other$offsetLeft != null : !this$offsetLeft.equals(other$offsetLeft))
            return false;
        final Object this$tempUrl = this.getTempUrl();
        final Object other$tempUrl = other.getTempUrl();
        if (this$tempUrl == null ? other$tempUrl != null : !this$tempUrl.equals(other$tempUrl)) return false;
        final Object this$printData = this.getPrintData();
        final Object other$printData = other.getPrintData();
        if (this$printData == null ? other$printData != null : !this$printData.equals(other$printData)) return false;
        final Object this$customTempUrl = this.getCustomTempUrl();
        final Object other$customTempUrl = other.getCustomTempUrl();
        if (this$customTempUrl == null ? other$customTempUrl != null : !this$customTempUrl.equals(other$customTempUrl))
            return false;
        final Object this$customData = this.getCustomData();
        final Object other$customData = other.getCustomData();
        if (this$customData == null ? other$customData != null : !this$customData.equals(other$customData))
            return false;
        return true;
    }

    protected boolean canEqual(final Object other) {
        return other instanceof PrintJdlOrderParameters;
    }

    public int hashCode() {
        final int PRIME = 59;
        int result = 1;
        final Object $printName = this.getPrintName();
        result = result * PRIME + ($printName == null ? 43 : $printName.hashCode());
        final Object $offsetTop = this.getOffsetTop();
        result = result * PRIME + ($offsetTop == null ? 43 : $offsetTop.hashCode());
        final Object $offsetLeft = this.getOffsetLeft();
        result = result * PRIME + ($offsetLeft == null ? 43 : $offsetLeft.hashCode());
        final Object $tempUrl = this.getTempUrl();
        result = result * PRIME + ($tempUrl == null ? 43 : $tempUrl.hashCode());
        final Object $printData = this.getPrintData();
        result = result * PRIME + ($printData == null ? 43 : $printData.hashCode());
        final Object $customTempUrl = this.getCustomTempUrl();
        result = result * PRIME + ($customTempUrl == null ? 43 : $customTempUrl.hashCode());
        final Object $customData = this.getCustomData();
        result = result * PRIME + ($customData == null ? 43 : $customData.hashCode());
        return result;
    }

    public String toString() {
        return "PrintJdlOrderParameters(printName=" + this.getPrintName() + ", offsetTop=" + this.getOffsetTop() + ", offsetLeft=" + this.getOffsetLeft() + ", tempUrl=" + this.getTempUrl() + ", printData=" + this.getPrintData() + ", customTempUrl=" + this.getCustomTempUrl() + ", customData=" + this.getCustomData() + ")";
    }
}
